package learm.pers.studysonarqube.codescanning.service;


import learm.pers.studysonarqube.codescanning.vo.SonarIssuesMusterVo;
import learm.pers.studysonarqube.codescanning.vo.SonarPagingVo;
import learm.pers.studysonarqube.codescanning.vo.SonarProjectMeasuresVo;
import learm.pers.studysonarqube.codescanning.vo.SonarProjectVo;

/**
 * @ClassName: ScanningService
 * @Description:
 * @Author: fangqing
 * @Date: 2021/7/27
 */
public interface ScanningService {
    /**
     * 获取 SonarQube扫描的项目(组件)
     * @param sonarPagingVo 分页
     * @param projectsKey 项目的key
     * @return
     */
    SonarProjectVo findProjects(SonarPagingVo sonarPagingVo, String projectsKey);
    /**
     * 获取 SonarQube扫描的指标措施
     * @param projectsKey 项目的key
     * @return
     */
    SonarProjectMeasuresVo findMeasures(String projectsKey);
    /**
     * 获取问题集合
     * @param sonarPagingVo 分页
     * @param projectsKey 项目的key
     * @param types 问题类型（BUG,VULNERABILITY,CODE_SMELL  == 缺陷,漏洞,代码异常）
     * @return
     */
    SonarIssuesMusterVo findIssues(SonarPagingVo sonarPagingVo, String projectsKey, String types);
}
